# 本模块用于计时，便于在函数执行中确认执行步骤和时间
from functools import wraps
import time

def timer(func):
    @wraps(func)
    async def wrapper(*rags,**kwrags):
        start_time = time.time()  # 记录函数开始执行的时间
        try:
            result = await func(*rags,**kwrags)  # 执行原函数并获取结果
            return result
        finally:
            end_time = time.time()
            calculate_time = end_time - start_time  # 计算函数执行时间
            print(f'the time cost of {func.__name__} is {calculate_time} seconds')  # 打印函数执行时间
    return wrapper




